package org.zoomdev.zoom.web.parameter;

import org.zoomdev.zoom.web.action.ActionContext;

import java.lang.reflect.Type;

/**
 * 针对方法的每一个参数进行适配
 * 将preParse解析出来的参数，转成具体的方法调用参数
 * <p>
 * 比如：
 * <p>
 * class UserController{
 * public void login(String account,String password){
 * <p>
 * }
 * }
 * <p>
 * 需要两个ParameterAdapter,将第一步preParse的结果转为String类型
 */
public interface ParameterAdapter {

    /**
     * @param context context
     * @param name    参数名称
     * @param type    参数类型
     * @return
     */
    Object get(ActionContext context, String name, Type type);
}
